package thread;

/**
 * 守护进程
 * 线程分为 用户线程 和 守护线程，setDaemon（） 中的参数默认为false，既默认线程为用户线程
 * 守护线程会一直执行到所有线程终止，守护线程才会慢慢停止
 * 用户线程就是执行自己的生命周期
 * @Author Janson
 * @Date 2022/2/27 14:50
 * @Version 1.0
 */
public class TestThreadDaemon  {
    public static void main(String[] args) {
        God god = new God();
        Person person = new Person();
        Thread thread = new Thread(god);
        //This method must be invoked before the thread is started.
        thread.setDaemon(true);
        thread.start();
        new Thread(person).start();
    }
}
class God implements Runnable{
    @Override
    public void run() {
        while (true){
            System.out.println("上帝守护者你");
        }
    }
}
class Person implements Runnable{
    @Override
    public void run() {
        for (int i = 0; i < 100; i++) {
            System.out.println("人的一生要活得快快乐乐------" + i);
        }
        System.out.println("-----------good bye-----------world");
    }

}
